package Test32;

//泛型方法的练习
/*
    定义一个工具类:ListUtil
    类中定义一个静态方法addAll，用来添加多个集合的元素。
 */


import java.util.ArrayList;

public class Test11 {
    public static void main(String[] args) {

        //1、创建一个集合
        ArrayList<String> list1 = new ArrayList<>();
        ArrayList<Integer> list2 = new ArrayList<>();
        ArrayList<Integer> list3 = new ArrayList<>();


        //2、调用方法添加元素
        ListUtil.addAll(list1, "aaa", "bbb", "ccc", "ddd");
        ListUtil.addAll(list2, 1, 2, 3, 4);
        ListUtil.addAll2(list3, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9);

        //3、打印
        System.out.println(list1);
        System.out.println(list2);
        System.out.println(list3);
    }
}

class ListUtil {
    private ListUtil() {
    }

    //参数一：集合
    //集合二~最后：要添加的元素
    public static <E> void addAll(ArrayList<E> list, E e1, E e2, E e3, E e4) {
        list.add(e1);
        list.add(e2);
        list.add(e3);
        list.add(e4);
    }


    //E... e:可变参数
    public static <E> void addAll2(ArrayList<E> list, E... e) {
        for (E element : e) {
            list.add(element);
        }
    }
}
